﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using YdWorkFlow.Core.Interface;
using YdWorkFlow.Core.Model.Activity;

namespace YdWorkFlow.Core.Model
{
    /// <summary>
    /// 步骤节点定义 Add by sgy 2016-03-01
    /// </summary>
    public class ActivityDefinition : BaseDefinition
    {
        /// <summary>
        /// 步骤类型 
        /// </summary>
        public EActivityType ActivityType { get; set; }
        /// <summary>
        /// 意见显示 0不显示 1显示
        /// </summary>
        public int OpinionDisplay { get; set; }
        /// <summary>
        /// 超期提示 0不提示 1要提示
        /// </summary>
        public int ExpiredPrompt { get; set; }
        /// <summary>
        /// 审签类型 0无签批意见栏 1有签批意见(无须签章) 2有签批意见(须签章)
        /// </summary>
        public int SignatureType { get; set; }
        /// <summary>
        /// 工时(小时)
        /// </summary>
        public decimal WorkTime { get; set; }
        /// <summary>
        /// 限额时间(小时)
        /// </summary>
        public decimal LimitTime { get; set; }
        /// <summary>
        /// 额外时间(小时)
        /// </summary>
        public decimal OtherTime { get; set; }
        /// <summary>
        /// 步骤备注说明
        /// </summary>
        public string Note { get; set; }
        /// <summary>
        /// 步骤行为相关参数
        /// </summary>
        public AcBehavior Behavior { get; set; }
        /// <summary>
        /// 流程表单
        /// </summary>
        public IList<AcForm> Forms { get; set; }
        /// <summary>
        /// 流程按钮
        /// </summary>
        public IList<AcButton> Buttons { get; set; }
        /// <summary>
        /// 字段状态
        /// </summary>
        public IList<AcFieldStatus> FieldStatus { get; set; }
        /// <summary>
        /// 步骤允许的人员和角色
        /// </summary>
        public IList<ActorDefinition> Actors { get; set; }
        /// <summary>
        /// 流程事件
        /// </summary>
        public AcEvent Event { get; set; }
        /// <summary>
        /// 设计时x坐标(用于排序)
        /// </summary>
        public decimal Position_x { get; set; }
        /// <summary>
        /// 设计时y坐标(用于排序)
        /// </summary>
        public decimal Position_y { get; set; }
        /// <summary>
        /// 子流程ID
        /// </summary>
        public string SubFlowID { get; set; }
    }
}
